package cn.tedu.sp03.controller;

import cn.tedu.sp01.entity.User;
import cn.tedu.sp01.service.UserService;
import cn.tedu.web.util.JsonResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author 金帮嘉诚 @date 2021-09-09 星期四 14:51
 */
@RestController
@Slf4j
public class UserController {
    @Autowired
    private UserService userService;

    @GetMapping("/{userId}")
    public JsonResult<User> getUser(
            @PathVariable Integer userId
    ) {
        User user = userService.getUser(userId);
        return JsonResult.ok().data(user);
    }

    //  url /8/score?score=xxxx
    @GetMapping("/{userId}/score")
    public JsonResult<?> addScore(
            @PathVariable Integer userId,// 如果这里的参数名和大括号中不一样 就要在注解后面中写上("大括号中参数名 这里是usrId")
            Integer score) {// 如果这里参数名和url期望的参数名不一样 就要在前面加@RequestParam("url中期望参数名 这里是score")
        userService.addScore(userId, score);
        return JsonResult.ok().msg("增加积分成功");
    }

    @GetMapping("/favicon.ico")
    public void ico() {
    }

}
